package com.cjkj.applet.service;

import com.cjkj.applet.domain.TPatVisit;
import com.cjkj.applet.domain.dto.PatientRequest;
import com.cjkj.applet.domain.vo.PatientVo;
import com.cjkj.common.core.web.domain.AjaxResult;

import java.util.List;

/**
 * 患者就诊记录Service接口
 * 
 * @author cjkj
 * @date 2024-08-30
 */
public interface ITPatVisitService 
{
    /**
     * 小程序患者开单
     * @param req
     * @return
     */
    String add(PatientRequest req);

    /**
     * 小程序用户患者列表
     * @return
     */
    List<PatientVo> getList(String dataType);

    /**
     * 出院
     * @param visitNos
     * @return
     */
    AjaxResult leaveHospital(List<Long> visitNos);













    /**
     * 查询患者就诊记录
     * 
     * @param visitNo 患者就诊记录主键
     * @return 患者就诊记录
     */
    public TPatVisit selectTPatVisitByVisitNo(Long visitNo);

    /**
     * 查询患者就诊记录列表
     * 
     * @param tPatVisit 患者就诊记录
     * @return 患者就诊记录集合
     */
    public List<TPatVisit> selectTPatVisitList(TPatVisit tPatVisit);

    /**
     * 新增患者就诊记录
     * 
     * @param tPatVisit 患者就诊记录
     * @return 结果
     */
    public int insertTPatVisit(TPatVisit tPatVisit);

    /**
     * 修改患者就诊记录
     * 
     * @param tPatVisit 患者就诊记录
     * @return 结果
     */
    public int updateTPatVisit(TPatVisit tPatVisit);

    /**
     * 批量删除患者就诊记录
     * 
     * @param visitNos 需要删除的患者就诊记录主键集合
     * @return 结果
     */
    public int deleteTPatVisitByVisitNos(Long[] visitNos);

    /**
     * 删除患者就诊记录信息
     * 
     * @param visitNo 患者就诊记录主键
     * @return 结果
     */
    public int deleteTPatVisitByVisitNo(Long visitNo);
}
